RegExp? regexp(String type) {
  switch (type) {
    case 'phone': //手机号码
      return RegExp(r"1[0-9]\d{9}$");
    case 'tel': //座机
      return RegExp(r"^(0\d{2,3}-\d{7,8})(-\d{1,4})?$");
    case 'card':
    //身份证
      return RegExp(
          r'^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|[Xx])$');
    case 'pwd6': //6位数字密码
      return RegExp(r"\d{6}$");
    case 'email': //邮箱
      return RegExp(r'^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$');
    case 'money': //金额(小数点2位)
      return RegExp(r'^\d*(?:\.\d{0,2})?$');
    case 'URL': //网址
      return RegExp(
          r'(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?');
    case 'number': //数字
      return RegExp(r'^[0-9]$');
    case 'english': //英文
      return RegExp(r'^[a-zA-Z]+$');
    case 'chinese': //中文
      return RegExp(r'[\\u4E00-\\u9FA5]+$');
    case 'lower': //小写
      return RegExp(r'^[a-z]+$');
    case 'upper': //大写
      return RegExp(r'^[A-Z]+$');
    case 'gbk':
      return RegExp("[`¥%+「」｜\"《》%_+~!@#\$^&*()=|{}':;',\\[\\].<>/?~！@#￥……&*（）——|{}【】‘；：”“'。，、？]");
    // default:
    //   return null;
  }
}

bool? checkStringWithRegExp(String string,String type) {
  RegExp? regExp = regexp(type);
  return regExp?.hasMatch(string);
}
//用于点击确认时调用校验文本是否符合格式（小数点后不能空位）
bool checkStringWithRegExpNew(String string) {
  RegExp? regExp = RegExp(r'^\d*(?:\.\d{1,2})?$');
  return regExp.hasMatch(string);
}